DS_Store가 뭘까? gitignore로 무시해 보기
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 DS_Store가 무엇인지와 gitignore로 무시하는 방법에 대해서 정리해 봤습니다.
DS_Store가 뭐야?
리포지토리에 파일을 업로드하려고 하면 항상 DS_Store라는 파일이 생성되어 같이 업로드가 됩니다.
이 DS_Store는 무엇을 하는 파일일까요? 리포지토리에 필요한 파일일까요?
DS_Store는 DesktopServices Store의 약자로 Mac에서 자동으로 생성되는 숨겨진 파일로 폴더 내의 파일과 배치, 설정 정 정보를 저장하고 있습니다. DS_Store에는 이런저런 meta 정보가 저장되어 있는 것 같습니다.
DS_Store 파일은 Mac에서만 생성되는 파일이므로 윈도우 사용자는 대개 마주칠 일이 없습니다. 그러나 같은 리포지토리를 공유하고 작업하는 경우 DS_Store 파일이 뜬금없이 생성되어 혼란스러울 수 있습니다. DS_Store 파일은 파일이나 폴더에 직접적인 영향을 미치지 않으므로 삭제하거나 생성되지 않도록 막아도 문제가 되지 않습니다.
DS_Store를 무시하자
그렇다면 DS_Store 업로드를 막으려면 어떻게 해야할까요?
다행히도 Git에서는 gitignore를 이용해 지정된 파일을 관리 대상에서 제외시킴으로써 이러한 문제를 해결할 수 있습니다.
vi .gitignore .DS_Store
gitignore를 사용하는 방법은 매우 간단합니다.
.gitignore 파일을 생성하고 관리 대상에서 제외할 파일 이름을 입력한 다음 저장합니다.
vi .gitignore .DS_Store git rm -r --cached .
이미 생성된 리포지토리에서 .DS_Store 업로드를 막으려면 gitignore 파일을 생성하고, 캐시를 삭제한 다음 파일 업로드를 진행하면 더이상 .DS_Store는 업로드 되지 않을 것입니다.
본 블로그 게시글을 읽고 궁금한 사항이 있으신 분들은 [email protected]로 보내주시면 감사하겠습니다.